8  Lezione 10 - 25/10

8.1 F1-Measure

  • Misura che prende in considerazione sia la recall che la precision
  • Media armonica di recall e precision: F = \dfrac{2PR}{P +R} = \dfrac{2}{\frac{1}{R} + \frac{1}{P}}
  • Rispetto alla media aritmetica, sia recall che precision dovranno essere alte per avere un F1 alto
    • Con la media aritmetica il sistema sarebbe molto penalizzato se uno dei due valori è molto basso
  • Variante F_{\beta}: si enfatizza la precision rispetto alla recall con un peso: F_{\beta} = \dfrac{(1 + \beta^2) \cdot PR}{\beta^2 P + R} = \dfrac{(1 + \beta^2)}{\frac{\beta^2}{R} + \frac{1}{P}}
    • \beta = 1: F_{\beta} = F
    • \beta > 1: più peso alla recall
    • \beta < 1: più peso alla precision
    • \beta = 0: F_{\beta} = P

8.2 Precision-Recall curve

  • Una metrica che tenga conto di precision e recall al variare del numero di documenti analizzati in cima ai documenti restituiti (quindi al variare del comportamento) è chiamata precision recall curve.
    • Una precision-recall curve per una singola query, però, non è una misura davvero indicativa delle performance del sistema: sarebbe necessario fare una media che consideri un numero rappresentativo di query.
      • Problema: ogni query ha un numero di documenti rilevanti differenti, pertanto la coordinata che rappresenta il recall avrà tanti valori diversi, non potremmo quindi confrontare le query
      • Soluzione: interpolazione
  • Interpoliamo ogni valore di precision per ogni livello di recall standard:
    • r_{j} \in {0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0}
    • La precision interpolata al j-esimo livello standard di recall è la massima precision calcolata a livello di recall maggiore di r_j: P(r_j) = \displaystyle \max_{\forall R | r \geq r_j} P(r)
    • Si considereranno per i grafici solo i valori di precision e recall relativi ai documenti rilevanti, presi man mano che si scorre la ranked list restituita dal sistema per la query
    • Osservazioni
      • Se recall non diventa 1, a un certo punto il grafico calerà a picco a 0, altrimenti non toccherà mai lo 0
  • Per confrontare più sistemi, andremo a calcolare l’area sottesa dalla curva interpolata (integrale)
    • Questo può essere difficile, dato che dovremmo conoscere la funzione che rappresenta quella curva
    • Comunque, se un sistema sovrasta sempre gli altri sistemi della comparison, allora già graficamente abbiamo la certezza che quel sistema rende meglio nel set di sistemi valutati

8.3 Precision@k e Precision@R

  • Per quanto utili possano risultare i grafici, spesso è preferibile utilizzare delle metriche quantificabili.
  • Precision@k: precision calcolata per i primi k risultati: P@k = \dfrac{r}{k}, con r il numero di documenti rilevanti trovati e k il numero di documenti scelto.
    • Questa metrica può essere buona per un ambiente web, ma la scelta arbitraria di k può creare problemi, immaginando un k = 10 in una query con 5 documenti rilevanti, P@10 non potrà mai avere 1 di precision anche quando il sistema è perfetto, cioè quando ritorna tutti e 5 i documenti nei primi 10 risultati
  • R-Precision: Precision@#rel_doc
    • In sostanza la lista dei risultati viene tagliata al numero di documenti rilevanti così da garantire al sistema di poter raggiungere una precision del 100%

8.4 Average Precision

  • Media delle precision nelle posizioni dei documenti rilevanti, rappresenta l’area sottesa dalla curva di precision-recall di una query: AP = \dfrac{1}{m} \displaystyle \sum_{k = 1}^{m} Precision(p = k), dove m è il numero totale di documenti rilevanti nella collezione per la query considerata.
    • Se ci sono documenti rilevanti non ritrovati, si somma uno 0 per ognuno di essi, in modo da poter fare una precisa media aritmetica.

8.5 MAP (Mean Average Precision)

  • Media aritmetica dell’AP calcolato per ogni query: MAP = \dfrac{1}{n} \displaystyle \sum_{j = 1}^{n} \dfrac{1}{m_j} \sum_{k = 1}^{m_j} Precision(p = k), dove n è il numero delle query e m_j è il numero di documenti rilevanti per la j-esima query
    • Stessa problema della media aritmetica incontrato per la F1
      • Soluzione: GMAP (Geometric MAP), utilizzo la media geometrica che annacqua query un pò scarse e enfatizza query su cui il sistema è forte): GMAP = \sqrt[n]{\displaystyle \prod_n AP_n}, dove n è il numero delle query